Telegram Group & Telegram Channel
Инструмент недели: планирование задач с Rocketry

Rocketry — это фреймворк для планирования задач в Python, который позволяет легко управлять задачами и их выполнением с помощью простых выражений.

👇 В этом посте мы покажем, как быстро настроить планировщик задач, используя Rocketry.

1⃣ Установите Rocketry

Для начала установите Rocketry с помощью pip:
pip install rocketry


2⃣ Напишите первый планировщик задач

Создайте файл, например, scheduler.py, и добавьте в него следующий код:
from rocketry import Rocketry
from rocketry.conds import daily

app = Rocketry()

@app.task(daily)
def do_daily():
print("Эта задача выполняется каждый день!")

if __name__ == '__main__':
app.run()


Этот код создаёт задачу, которая выполняется каждый день. Планировщик будет работать в фоновом режиме, выполняя задачу каждый день.

3⃣ Запуск задач

После написания кода запустите его с помощью Python:
python scheduler.py


Теперь ваша задача будет выполняться каждый день.

4⃣ Настройка различных условий

Rocketry позволяет настраивать задачи с использованием различных условий.

▶️ Задача, выполняющаяся каждые 10 секунд:
@app.task(every("10 seconds"))
def do_continuously():
print("Эта задача выполняется каждую секунду!")


▶️ Задача, выполняющаяся каждый день после 7:00:
@app.task(daily.after("07:00"))
def do_daily_after_seven():
print("Эта задача выполняется каждый день после 7:00!")


▶️ Задача, выполняющаяся каждый час между 22:00 и 06:00:
@app.task(hourly & time_of_day.between("22:00", "06:00"))
def do_hourly_at_night():
print("Эта задача выполняется каждый час ночью!")


▶️ Задача, выполняющаяся по cron-выражению:
@app.task(cron("* 2 * * *"))
def do_based_on_cron():
print("Эта задача выполняется по cron-выражению!")


5⃣ Пайплайнинг задач

Rocketry поддерживает пайплайнинг задач — передача данных между задачами:
from rocketry.conds import daily, after_success
from rocketry.args import Return

@app.task(daily.after("07:00"))
def do_first():
return 'Hello World'

@app.task(after_success(do_first))
def do_second(arg=Return('do_first')):
print(f"Задача 'do_first' вернула: {arg}")
return 'Hello Python'


6⃣ Параллельное выполнение задач

Rocketry поддерживает выполнение задач в разных режимах: синхронно, асинхронно, в отдельных потоках и процессах:
@app.task(daily, execution="main")
def do_unparallel():
print("Эта задача выполняется синхронно.")

@app.task(daily, execution="async")
async def do_async():
print("Эта задача выполняется асинхронно.")

@app.task(daily, execution="thread")
def do_on_separate_thread():
print("Эта задача выполняется в отдельном потоке.")

@app.task(daily, execution="process")
def do_on_separate_process():
print("Эта задача выполняется в отдельном процессе.")


▶️ С помощью Rocketry вы можете автоматизировать задачи с минимальными усилиями, будь то для небольших проектов или для масштабных приложений.

Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/pyproglib/6674
Create:
Last Update:

Инструмент недели: планирование задач с Rocketry

Rocketry — это фреймворк для планирования задач в Python, который позволяет легко управлять задачами и их выполнением с помощью простых выражений.

👇 В этом посте мы покажем, как быстро настроить планировщик задач, используя Rocketry.

1⃣ Установите Rocketry

Для начала установите Rocketry с помощью pip:

pip install rocketry


2⃣ Напишите первый планировщик задач

Создайте файл, например, scheduler.py, и добавьте в него следующий код:
from rocketry import Rocketry
from rocketry.conds import daily

app = Rocketry()

@app.task(daily)
def do_daily():
print("Эта задача выполняется каждый день!")

if __name__ == '__main__':
app.run()


Этот код создаёт задачу, которая выполняется каждый день. Планировщик будет работать в фоновом режиме, выполняя задачу каждый день.

3⃣ Запуск задач

После написания кода запустите его с помощью Python:
python scheduler.py


Теперь ваша задача будет выполняться каждый день.

4⃣ Настройка различных условий

Rocketry позволяет настраивать задачи с использованием различных условий.

▶️ Задача, выполняющаяся каждые 10 секунд:
@app.task(every("10 seconds"))
def do_continuously():
print("Эта задача выполняется каждую секунду!")


▶️ Задача, выполняющаяся каждый день после 7:00:
@app.task(daily.after("07:00"))
def do_daily_after_seven():
print("Эта задача выполняется каждый день после 7:00!")


▶️ Задача, выполняющаяся каждый час между 22:00 и 06:00:
@app.task(hourly & time_of_day.between("22:00", "06:00"))
def do_hourly_at_night():
print("Эта задача выполняется каждый час ночью!")


▶️ Задача, выполняющаяся по cron-выражению:
@app.task(cron("* 2 * * *"))
def do_based_on_cron():
print("Эта задача выполняется по cron-выражению!")


5⃣ Пайплайнинг задач

Rocketry поддерживает пайплайнинг задач — передача данных между задачами:
from rocketry.conds import daily, after_success
from rocketry.args import Return

@app.task(daily.after("07:00"))
def do_first():
return 'Hello World'

@app.task(after_success(do_first))
def do_second(arg=Return('do_first')):
print(f"Задача 'do_first' вернула: {arg}")
return 'Hello Python'


6⃣ Параллельное выполнение задач

Rocketry поддерживает выполнение задач в разных режимах: синхронно, асинхронно, в отдельных потоках и процессах:
@app.task(daily, execution="main")
def do_unparallel():
print("Эта задача выполняется синхронно.")

@app.task(daily, execution="async")
async def do_async():
print("Эта задача выполняется асинхронно.")

@app.task(daily, execution="thread")
def do_on_separate_thread():
print("Эта задача выполняется в отдельном потоке.")

@app.task(daily, execution="process")
def do_on_separate_process():
print("Эта задача выполняется в отдельном процессе.")


▶️ С помощью Rocketry вы можете автоматизировать задачи с минимальными усилиями, будь то для небольших проектов или для масштабных приложений.

Библиотека питониста #буст

BY Библиотека питониста | Python, Django, Flask




Share with your friend now:
tg-me.com/pyproglib/6674

View MORE
Open in Telegram


Библиотека питониста | Python Django Flask Telegram | DID YOU KNOW?

Date: |

Export WhatsApp stickers to Telegram on Android

From the Files app, scroll down to Internal storage, and tap on WhatsApp. Once you’re there, go to Media and then WhatsApp Stickers. Don’t be surprised if you find a large number of files in that folder—it holds your personal collection of stickers and every one you’ve ever received. Even the bad ones.Tap the three dots in the top right corner of your screen to Select all. If you want to trim the fat and grab only the best of the best, this is the perfect time to do so: choose the ones you want to export by long-pressing one file to activate selection mode, and then tapping on the rest. Once you’re done, hit the Share button (that “less than”-like symbol at the top of your screen). If you have a big collection—more than 500 stickers, for example—it’s possible that nothing will happen when you tap the Share button. Be patient—your phone’s just struggling with a heavy load.On the menu that pops from the bottom of the screen, choose Telegram, and then select the chat named Saved messages. This is a chat only you can see, and it will serve as your sticker bank. Unlike WhatsApp, Telegram doesn’t store your favorite stickers in a quick-access reservoir right beside the typing field, but you’ll be able to snatch them out of your Saved messages chat and forward them to any of your Telegram contacts. This also means you won’t have a quick way to save incoming stickers like you did on WhatsApp, so you’ll have to forward them from one chat to the other.

Telegram hopes to raise $1bn with a convertible bond private placement

The super secure UAE-based Telegram messenger service, developed by Russian-born software icon Pavel Durov, is looking to raise $1bn through a bond placement to a limited number of investors from Russia, Europe, Asia and the Middle East, the Kommersant daily reported citing unnamed sources on February 18, 2021.The issue reportedly comprises exchange bonds that could be converted into equity in the messaging service that is currently 100% owned by Durov and his brother Nikolai.Kommersant reports that the price of the conversion would be at a 10% discount to a potential IPO should it happen within five years.The minimum bond placement is said to be set at $50mn, but could be lowered to $10mn. Five-year bonds could carry an annual coupon of 7-8%.

Библиотека питониста | Python Django Flask from tr


Telegram Библиотека питониста | Python, Django, Flask
FROM USA